Space-time transmit diversity

ABSTRACT

A linear transformation of parallel space-time transmit diversity encoded streams; also, asymmetrical symbol mapping of parallel streams. Separately or together, these improve error rate performance as well as system throughput. Preferred embodiments include CDMA wireless systems with multiple antennas.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority from provisional applications Ser. Nos. 60/287,998, filed May 1, 2001 and 60/288,209, filed May 2, 2001. The following patent applications disclose related subject matter: Ser. Nos. 10/107,275, filed Mar. 26, 2002 and 10/131,742, filed Apr. 22, 2002, and cofiled 10/135611 or 10/135679. These applications have a common assignee with the present application.

BACKGROUND OF THE INVENTION

The present invention relates to wireless digital communications, and more particularly to space-time diversity transmission systems and methods.

Spread spectrum wireless communications utilize a radio frequency bandwidth greater than the minimum bandwidth required for the transmitted data rate, but many users may simultaneously occupy the bandwidth. Each of the users has a pseudo-random code for “spreading” information to encode it and for “despreading” (by correlation) received spread spectrum signals and recovery of information. Such multiple access typically appears under the name of code division multiple access (CDMA). The pseudo-random code may be an orthogonal (Walsh) code, a pseudo-noise (PN) code, a Gold code, or combinations (modulo-2 additions) of such codes. After despreading the received signal at the correct time instant, the user recovers the corresponding information while other users' interfering signals appear noise-like. For example, the interim standard IS-95 for such CDMA communications employs channels of 1.25 MHz bandwidth and a pseudo-random code pulse (chip) interval Tc of 0.8138 microsecond with a transmitted symbol (bit) lasting 64 chips. The recent 3GPP wideband CDMA (WCDMA) proposal employs a 3.84 MHz bandwidth and the CDMA code length applied to each information symbol may vary from 4 chips to 256 chips. Indeed, UMTS (universal mobile telecommunications system) approach UTRA (UMTS terrestrial radio access) provides a spread spectrum cellular air interface with both FDD (frequency division duplex) and TDD (time division duplex) modes of operation. UTRA currently employs 10 ms duration frames partitioned into 15 time slots with each time slot consisting of 2560 chips (T_(c)=0.26 microsecond).

The air interface leads to multipath reception, so a RAKE receiver has individual demodulators (fingers) tracking separate paths and combines the finger results to improve signal-to-noise ratio (SNR). The combining may use a method such as the maximal ratio combining (MRC) in which the individual detected signals in the fingers are synchronized and weighted according to their signal strengths or SNRs and summed to provide the decoding. That is, a RAKE receiver typically has a number of DLL or TDL code tracking loops together with control circuitry for assigning tracking units to the strongest received paths. Also, an antenna array could be used for directionality by phasing the combined signals from the antennas.

Further, UTRA allows for space-time block-coding-based transmit antenna diversity (STTD) in which, generically, channel bits b₀, b₁, b₂, b₃ (values ±1) are transmitted as the sequence b₀, b₁, b₂, b₃ by antenna 1 and simultaneously transmitted as the sequence −b₂, b₃, b₀, −b₁ by antenna 2. Note that interpreting (b₀, b₁) and (b₂, b₃) as two complex numbers (e.g., QPSK or QAM symbols) implies the sequence transmitted by antenna 2 differs from the sequence from antenna 1 by a rotation of π/2 in a two-complex-dimensional space followed by complex conjugation.

STTD is a diversity technique in the sense that it provides redundancy for the transmitted symbols. Recently, efforts in standardization of high speed downlink packet access (HSDPA) in WCDMA have taken place. The use of multiple antennas at the transmitter as well as the receiver is considered as a candidate technology. While STTD fits nicely in the grand scheme, STTD does not provide any increase in data rate relative to the current WCDMA systems.

Naguib et al, Increasing Data Rate over Wireless Channels, IEEE Signal Proc. Mag. 76 (May 2000) considers multiple antennas for both transmitter and receiver together with synchronous cochannel space-time coding (STTD) and interference cancellation. This approach can be adopted for HSDPA systems with 4 antennas at the base station, where each of the two pairs of antennas transmits one distinct data stream. This results in the transmission of two independent data streams, and thus doubles the system data rate as well as capacity. This scheme is thus double STTD (DSTTD) for a 4-antenna transmitter, or multiple STTD for a 2n-antenna transmitter with n>2.

For high data rate systems, the performance of a scheme can be evaluated based on the error rate (bit error rate, symbol error rate, frame error rate) as well as system throughput (the total data rate the system can support). While double/multiple STTD provides increased data rate and reasonably good performance, it can still be improved in some circumstances.

For practical wireless communication systems employing multiple antennas, small inter-element spacing is desirable. However, this often results in large correlation between the channel parameters especially when the channel angular spread is small. For high data rate schemes such as double/multiple STTD, high channel correlation results in significant performance loss due to the loss in diversity gain as well as decrease in the ability to separate multiple independent data streams.

SUMMARY OF THE INVENTION

The present invention provides encoding/decoding with a channel adapting linear transform of parallel space-time transmit diversity (STTD) streams.

The present invention provides encoding/decoding with parallel space-time transmit diversity (STTD) streams using differing symbol constellations in space or time.

This has the advantages including increased performance (in terms of error rate and system throughput) for wireless communications.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings are heuristic for clarity.

FIGS. 1 a-1 d are flow diagrams.

FIGS. 2 a-2 e illustrate preferred embodiment transmitter and receivers.

FIGS. 3-4 show other preferred embodiment transmitter and receiver.

FIGS. 5-9 present simulation results.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

1. Overview

FIGS. 1 a-1 d are flow diagrams for preferred embodiment transmission and reception methods which include transmission using linear transformations of parallel symbol streams with space-time transmit diversity (STTD) encoding for multiple transmission antennas. Reception responds to the linear transformation. Alternative preferred embodiment double/multiple STTD encoding uses differing constellations for differing symbols streams with or without the linear transformation. The linear transformation adapts to the transmission channel conditions in order to make the transformed channel matrix formally approximate that of an independent identically distributed channel; this enhances channel capacity and system performance by compensating for high correlation of transmission channel coefficients as may arise from small spacing of transmitter antennas. The linear transformation is updated to adapt to changing channel conditions. Preferred embodiment approaches for simplifying the linear transformation computation include restriction of the linear transformation to a permutation or quantization of its elements.

Preferred embodiment communications systems use preferred embodiment encoding and decoding methods, and FIGS. 2 a-2 c illustrate preferred embodiment transmitter and receiver functional blocks.

In preferred embodiment communications systems base stations and mobile users could each include one or more digital signal processors (DSPs) and/or other programmable devices with stored programs for performance of the signal processing of the preferred embodiment methods. Alternatively, specialized circuitry could be used. The base stations and mobile users may also contain analog integrated circuits for amplification of inputs to or outputs from antennas and conversion between analog and digital; and these analog and processor circuits may be integrated as a system on a chip (SoC). The stored programs may, for example, be in ROM or flash EEPROM integrated with the processor or external. The antennas may be parts of receivers with multiple finger RAKE detectors for each user's signals. Exemplary DSP cores could be in the TMS320C6xxx or TMS320C5xxx families from Texas Instruments.

2. Four Transmit Antennas with One Receive Antenna Preferred Embodiments

FIG. 2 a illustrates a first preferred embodiment transmitter which encodes two symbol streams (s₁ and s₂) with an STTD encoder for each stream and transmits with four antennas, two antennas for each STTD encoder. This could be a base station transmitter in a cellular wireless system. FIG. 2 b illustrates a preferred embodiment receiver with one antenna for reception, such as for a mobile user in a cellular wireless system. Preferred embodiments in subsequent sections include general antenna arrangements. A base station may include the channel estimation and linear transformation computation as in FIG. 2 b.

The FIG. 2 a transmitter may operate according to the FIG. 1 a flow as follows. Presume a block of data bits (with FEC) is channel encoded, block interleaved, and mapped to a block of symbols: . . . , s₁(n), s₂(n), s₁(n+1), s₂(n+1), s₁(n+2), s₂(n+2), s₁(n+3), s₂(n+3), . . . , where each symbol s_(j)(k) is interpreted as a discrete complex number (e.g., QPSK, QAM, . . . ). The serial-to-parallel converter sends the stream . . . , s₁(n), s₁(n+1), s₁(n+2), s₁(n+3), . . . to the upper STTD encoder and the stream . . . , s₂(n), s₂(n+1), s₂(n+2), s₂(n+3), . . . to the lower STTD encoder. The upper STTD encoder has two outputs streams: . . . , x₁(n), x₁(n+1), x₁(n+2), x₁(n+3), . . . , and . . . , x₂(n), x₂(n+1), x₂(n+2), x₂(n+3), . . . , where pairwise the x_(j)( )s are equal to the s₁( )s: x₁(n)=s₁(n), x₁(n+1)=s₁(n+1) and x₂(n)=−s₁*(n+1), x₂(n+1)=s₁*(n). That is, the x₁ stream is just the s₁ stream and the x₂ stream is the pairwise rotation in two-complex-dimensional space of the s₁ stream. Analogously, the lower STTD encoder has two outputs streams: . . . , x₃(n), x₃(n+1), x₃(n+2), x₃(n+3), . . . , and . . . , x₄(n), x₄(n+1), x₄(n+2), x₄(n+3), . . . , where again pairwise the x_(j)( )s are equal to the s₂( )s: x₃(n)=s₂(n), x₃(n+1)=s₂(n+1) and x₄(n)=−s₂*(n+1), x₄(n+1)=s₂*(n).

The W block linearly transforms the four streams x₁(n), x₂(n), x₃(n), x4(n) into the four streams y₁(n), y₂(n), y₃(n), y₄(n); that is, W transforms four symbol streams into four streams of linear combinations of symbols. W adapts to transmission channel conditions as described below; and the choice of W enhances channel capacity. Note that the flow of FIG. 1 a presumes that the transmitter also receives signals in the same channel as its transmissions so that the transmitter can estimate the physical channel coefficients and compute W; otherwise, the transmitter must obtain W from the receiver to which it transmits. For the case of a CDMA system each of the four outputs y_(j)(n) is next spread (multiplied by a common spreading code). Then the (spread) transformed-symbol streams drive modulators (pulse generators (at the chip rate) with essentially cosine and sine pulses for the real (in phase) and imaginary (quadrature) components of the (spread) y_(j)(n)) which modulate the carrier wave radiated by the corresponding transmitter antennas. For preferred embodiments not using CDMA, omit the spreading and operate the pulse generators at the symbol rate. For an OFDM (orthogonal frequency division multiplexing) system each sub-carrier (tone) would have its own double/multiple STTD and linear transformation.

FIG. 2 b illustrates a first preferred embodiment receiver with one antenna which operates as indicated by FIG. 1 b. The antenna connects to a down-converter which drives a RAKE detector having one or more tracking fingers (including a sub-chip-rate sampler for A/D conversion, early-late chip synchronizer with despreading correlator, path channel estimation) to track resolvable received multipath signals, and the multipath detected signals may be combined using SNR weights. All four transmitter spreaders use the same spreading code; this increases capacity in that other spreading codes may be used for other data streams. Small spacing among the four transmitter antennas implies high correlation among the transmission channel coefficients in that each path from one transmitter antenna likely has corresponding highly correlated paths from the other three transmitter antennas. This also implies near synchrony of the received symbols from the four transmitter antennas along four highly correlated paths and a single despreader captures all four paths in a receiver RAKE finger. Of course, the channel coefficients for the four highly-correlated paths must differ somewhat in order to distinguish the s₁ and s₂ symbols; and the linear transformation W effectively utilizes these differences. Preferred embodiment receivers with two or more antennas (see below) provide further channel coefficient variety.

Denote the received (despread) baseband signal for symbol interval n as r(n)=h ₁ y ₁(n)+h ₂ y ₂(n)+h ₃ y ₃(n)+h ₄ y ₄(n)+w(n) where h_(m) is the baseband channel coefficient for the channel path(s) from the mth transmitter antenna to the receiver antenna and w(n) is channel white noise. Note that the h_(m) vary with n, but this variation is slow and thus ignored (except for channel estimation updates) and not explicit in the notation. Estimate the h_(m) by intermittently transmitting pilot symbols from each of the four transmitter antennas; FIG. 2 b indicates channel estimation.

First analyze the receiver in the simplest case of the y_(m)(n)=x_(m)(n), which corresponds to the transformation matrix W=I₄ (the 4×4 identity matrix). That is, consider: r(n)=h ₁ x ₁(n)+h ₂ x ₂(n)+h ₃ x ₃(n)+h ₄ x ₄(n)+w(n) =h₁ s ₁(n)+h₂(−s ₁*(n+1))+h₃ s ₂(n)+h₄(−s ₂*(n+1))+w(n) and so r*(n+1)=h ₁ *x ₁*(n+1)+h ₂ *x ₂*(n+1)+h ₃ *x ₃*(n+1)+h ₄ *x ₄*(n+1)+w*(n+1) =h ₁ *s ₁*(n+1)+h ₂ *s ₁*(n)+h ₃*s₂*(n+1)+h ₄ *s ₂(n)+w*(n+1) This can be expressed in terms of 2-vectors and 2×2 matrices as: r=A ₁ s ₁ +A ₂ s ₂ +w where r is the 2-vector of components r(n), r*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); s₂ is the 2-vector of components s₂(n), s₂*(n+1); A₁ is a 2×2 matrix corresponding to the channel path(s) of the upper pair of transmitter antennas in FIG. 2 a to the receiver antenna with the first row of A₁ equal h₁, −h₂ and second row h₂*, h₁*; A₂ is a 2×2 matrix corresponding to the channel path(s) of the lower pair of transmitter antennas to the receiver antenna with the first row h₃, −h₄ and second row h₄*, h₃*; and w is a 2-vector with white noise components.

The notation can be further compressed with the following definitions: 4×1 vector s as the vertical concatenation of s₁ and s₂; and 2×4 matrix A as the horizontal concatenation of A₁ and A₂ (thus the first row of A is [h₁, −h₂, h₃, −h₄] and the second row is [h₂*, h₁*, h₄*, h₃*]. With these definitions: r=A s+w The matrix A is the 2×4 effective channel coefficient matrix of the channel from the four transmitter antennas to the receiver antenna.

The two signals transmitted by the two transmitter antennas fed from the same STTD encoder (e.g., x₁ and x₂ or x₃ and X4) will not interfere with each other due to the orthogonality provided by the STTD encoding. Indeed, at receiver antenna 1 the portion of the 2-vector [r(n), r(n+1)] from transmitter antenna 1 is [h₁s₁(n), h₁s₁(n+1)] and the portion from transmit antenna 2 is [−h₂s₁*(n+1), h₂s₁*(n)], and the complex inner product of these two vectors is h₁s₁(n){−h₂s₁*(n+1)}*+h₁s₁(n+1){h₂s₁*(n)}*=0. However, any combination of two signals coming from different STTD encoders interfere with each other and need to be separated using an interference resistant detector. Some examples of interference resistant detection scheme are the maximum likelihood (which is optimal) detection, linear detection (zero forcing or minimum mean square error (MMSE)), and iterative detection (zero forcing or MMSE). Both linear and iterative detectors are based on the idea of interference suppression and/or cancellation.

Since the matrix A is 2×4, linear and iterative detectors are not applicable in this scenario. The maximum likelihood detector, however, can still be utilized. In general, a maximum likelihood detection estimates the transmitted symbols s by ŝ which is the 4-vector of symbols that minimizes the sum of the error in the received signal on the receiver antenna: min∥r−Aŝ∥ ²=min∥r−(A ₁ ŝ ₁ +A ₂ ŝ ₂)∥² Because there are a finite number of symbols in a constellation (e.g., QAM, QPSK, . . . ), there are only a finite number of symbol pairs to search for the minimization. And the minimization computations can use the channel estimates Â (derived from received known pilot symbol transmissions) in place of A. Further, the detector output may be a soft (log of symbol probability) output for each possible symbol; a MAP decoder would use such detector outputs.

The computations (search over the finite set of possible ŝ) can be recast by left multiplication with A^(H) where ^(H) indicates Hermitian conjugate. This recasting provides a direct analysis below for the linear transformation W. Thus set: z=A ^(H) r=A ^(H)(A s+w)=C s+A ^(H) w Then the decoding minimization formally becomes min (z−Cŝ)^(H)C⁻¹(z−Cŝ) where C is the 4×4 Hermitian matrix A^(H) A which can be viewed as a 2×2 array of 2×2 matrices A_(k) ^(h) A_(m) for k,m=1,2 with

$\begin{matrix} {\left. {{A_{1}^{H}A_{1}} = {\left( {❘h_{1}} \right.^{2} + {h_{2}}^{2}}} \right)I_{2}\mspace{14mu}\left( {I_{2}\mspace{14mu}{is}\mspace{14mu} 2 \times 2\mspace{14mu}{identity}\mspace{14mu}{matrix}} \right)} \\ {{A_{2}^{H}A_{2}} = {\left( {{h_{3}}^{2} + {h_{4}}^{2}} \right)I_{2}}} \\ {{A_{1}^{H}A_{2}} = \begin{bmatrix} {\left( {{h_{1}^{*}h_{3}} + {h_{2}h_{4}^{*}}} \right)} & {- \left( {{h_{1}^{*}h_{4}} - {h_{2}h_{3}^{*}}} \right)} \\ {\left( {{h_{1}^{*}h_{4}} - {h_{2}h_{3}^{*}}} \right)^{*}} & {\left( {{h_{1}^{*}h_{3}} + {h_{2}h_{4}^{*}}} \right)^{*}} \end{bmatrix}} \end{matrix}$ A ₂ ^(h) A ₁=(A ₁ ^(H) A ₂)^(H)

That is, C consists of STTD-encoded 2×2 subblocks and reflects the physical channel which determines performance of the communication system.

Now for W in general; choose W so that the corresponding transformed C, denoted {hacek over (C)}, will resemble the channel matrix of an independent, identically distributed channel in that: (1) expectations of off-diagonal elements are close to 0 and (2) expectations of on-diagonal elements are uniform. The off-diagonal elements reflect the average additional interference due to channel correlations, and the smallest on-diagonal element corresponds to the stream with the worst signal to interference plus noise ratio (SINR) which dominates performance. Thus transform with W to approximate optimal channel performance; so channel correlation underlies the choice of W as follows.

Presume a Rayleigh fading channel so the hm are normally distributed complex random variables with zero means. And the 4×4 channel covariance matrix, R, is the expectation of the 4×4 matrix of pairwise products of channel coefficients; that is, for k,m=1,2,3,4: R _(k,m) =E[h _(k) h _(m)*] For fading channels with rich scatterers (typical conditions for cellular wireless), the scattering at the transmitter and at the receiver are independent; and this independence, in general, implies R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements ρ_(TX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements ρ_(RX)(i,j)). That is, R=R_(RX){circle around (×)}R_(TX); or in other words, E[h_(ik)h_(jm)*]=ρ_(RX)(i,j) ρ_(TX)(k,m). For the preferred embodiments with 4 transmitter antennas and one receiver antenna: E[h _(k) h _(m)*]=ρ_(RX)(1,1) ρ_(TX)(k,m) for k,m=1,2,3,4 Thus ρ_(RX)(1,1) is just a multiplicative constant, and the relative values of the ρ_(TX)(k,m) determines the detection.

Estimate (e.g., maximum likelihood) the 4×4 transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel coefficient estimates h _(m) over multiple symbol intervals. Because R_(TX) is Hermitian, there are only 4 diagonal plus 6 upper (or lower) triangular independent elements to estimate. ρ_(RX)(1,1)ρ_(TX)(k,m)=(1/N)Σ_(1≦n≦N) ĥ _(k) [n]ĥ _(m) *[n] where N is the number of samples and the h _(m)[n] are the channel coefficient estimates for symbol interval n. The number of samples N used may depend upon the fading rate of the channel; but a heuristic rule of thumb takes N>5L where L is the length of vector h_(m). The estimates ĥ_(m) (from a pilot channel) are available from the space-time combining operation.

Now consider the effect of a linear transformation W. As illustrated in FIG. 2 a the y_(m)(n) are expressed in terms of the x_(m)(n) by the linear transform W. Thus write x₁(n), x₂(n), x₃(n), x4(n) as a 4-vector x(n) and similarly write y₁(n), y₂(n), y₃(n), y₄(n) as the 4-vector y(n), and take y(n)=W* x(n) where W is a 4×4 complex matrix and W* is the complex conjugate of W. Thus the received signal r(n) can be expressed in terms of the xm for general W by r(n)=h ₁ y ₁(n)+h ₂ y ₂(n)+h ₃ y ₃(n)+h ₄ y ₄(n)+w(n) = h ₁ x ₁(n)+ h ₂ x ₂(n)+ h ₃ x ₃(n)+ h ₄ x ₄(n)+w(n) Take h to be the 4-vector with components h₁, h₂, h₃, h₄ and h the 4-vector components h ₁, h ₂, h ₃, h ₄, and thus h=W^(H)h. In other words, the transformed physical channel in terms of x has channel coefficients h:

$\begin{matrix} {r = {{\text{<}h}❘{{y\text{>}} + w}}} \\ {= {{\text{<}h}❘{{W^{*}x\text{>}} + w}}} \\ {= {{\text{<}W^{H}h}❘{{x\text{>}} + w}}} \\ {= {{\text{<}\hslash}❘{{x\text{>}} + w}}} \end{matrix}$ Likewise in terms of x, the 2×2 STTD channel matrices are {hacek over (A)}₁ with first row [ h ₁, − h ₂] and second row [ h ₂*, h ₁*], and {hacek over (A)}₂ with first row [ h ₃, − h ₄] and second row [ h ₄*, h ₃*]; the channel matrix {hacek over (C)}={hacek over (A)}^(H){hacek over (A)}; the transmitter covariance {hacek over (R)}_(TX)=W^(H)R_(TX)W, and the covariance {hacek over (R)}=(I{circumflex over (×)}W)^(H)R (I{circumflex over (×)}W) where I is the 1×1 identity matrix from the receiver with one antenna. (If the receiver has one antenna with a Q-finger RAKE detector, then this is essentially the same as Q separate antennas and the receiver covariance matrix R_(RX) is Q×Q and will reflect the RAKE combining; the following section considers multiple receiver antennas.)

The preferred embodiments choose W so the transformed channel matrix {hacek over (C)} approximates that of an independent, identically distributed channel. This translates into finding the W that minimizes the expectation of the off-diagonal terms of {hacek over (C)} and that uniformizes the expectations of the on-diagonal terms. First, presume a normalization: trace{W^(H)W}=4. Next, because only relative size among the h _(m) matters, normalize by taking trace{{hacek over (R)}TX}=4; this implies E[| h ₁|²+| h ₂|²+| h ₃|²+| h ₄|²]=4. Then find W to minimize the sum of off-diagomal terms ΣΣ_(k≠m) trace{E[{hacek over (A)}_(k) ^(H){hacek over (A)}_(m)]} and uniformize on-diagonal terms so E[| h ₁|²+| h ₂|²]=E[| h ₃|²+| h ₄|²]=2. FIG. 1 b illustrates the foregoing flow, including intermittently updating the channel coefficient estimation and resultant W computation. And FIG. 2 b shows a receiver block diagram.

More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{hacek over (C)}]is taking W to min{|E[ h ₁* h ₃+ h ₂ h ₄*]|²+|E[ h ₁* h ₄− h ₂ h ₃*]|²} min{|E[| h ₁|²+| h ₂|²]−2|} Thus the overall detection approach in FIG. 2 b starts with estimates of the physical channel coefficients, h_(m), as from pilot symbols, and these estimates (after linear transformation with the then-current W) are used to make {hacek over (A)} for detection. Of course, the W used for detection at the receiver must match the W used by the transmitter. And, for a W update, the recent channel estimates are used to generate estimates of the correlation expectations E[h_(k)h_(m)*] which are transformed by a W into the transformed channel correlation expectations E[ h _(k) h _(m)*] and also, by combinations, into elements of an updated E[{hacek over (C)}]. Hence, update W by picking the transformation which makes E[{hacek over (C)}]approximate the maximum capacity channel with 0 off-diagonal elements and uniform on-diagonal elements. Intermittently (periodically) perform this update computation of W to adapt to changing channel conditions. The channel coefficients estimation could be a moving averages over a few slots (e.g., 3 slots, 6 slots, 15 slots with a 0.667 msec slot in WCDMA); or the estimation could be at the symbol rate by running the pilot through a simple smoothing filter, especially for high fading rates conditions. The W update may be once a transmission time interval which may be 1 slot, 3 slots, 5 slots, 15 slots. More adaptively, the updates could be according to an analysis of current channel estimates.

After finding W, which may be performed by both the transmitter and the receiver or just by the receiver and conveyed to the transmitter, the transmitter applies W to transmissions as illustrated in FIGS. 1 a, 2 a. Similarly, the receiver applies W to its estimates of physical channel coefficients h_(m) from pilot transmissions to recover the transformed physical channel coefficients h _(m) and then the STTD matrices {hacek over (A)}_(m) by expectations. The {hacek over (A)}_(m) are used for space-time decoding as shown in FIGS. 1 b, 2 b by finding ŝ to minimize min ({hacek over (A)}^(H)r−{hacek over (C)}ŝ)^(H){hacek over (C)}⁻¹({hacek over (A)}^(H)r−{hacek over (C)}ŝ) where {hacek over (C)} is roughly the identity matrix. In this case, one may approximate the maximum likelihood matrix as min∥{hacek over (A)}^(H)r−{hacek over (C)}ŝ∥²

The minimization computations optimally consider all possible W and lead to complex computations. In the case of time-division duplexing (TDD) with base station transmission and reception (from mobiles) in the same (reciprocal) physical channel, the W computation may be performed at the base station using its channel estimates as in FIG. 1 a; the base station typically has available computational power. The W used at the transmitter can be communicated to the receiver for detection. Alternatively, the receiver itself may also compute W based on its most recent or delayed channel estimates.

In contrast, for frequency-division duplexing (FDD) the W must be computed at the mobile receiver (the base station receives signals from the mobile in a different frequency band) and communicated to the base station via a feedback channel; consequently, quantization of W permits computations to be performed by searching (comparison-feedback) over smaller sets of possible Ws. A one-shot approach compares all possible choices of W and then progressively signals the quantized elements of W back to the transmitter, most significant bits first. Alternatively, partition the set of all possible W into subsets: S₁, S₂, . . . S_(K). Then at an update time t the receiver compares the choices of W in a corresponding subset S_(k(t)), and the resulting best (minimizing) choice W^((k)) from this subset is then compared to the then-current previous best choices W⁽¹⁾, . . . , W^((K)) from the other subsets, and the best W^((t)) of these W⁽¹⁾, . . . , W^((k)), . . . , W^((K)) is used as the update and sent to the transmitter.

Another low complexity approach restricts W to be a permutation of the x_(m); that is, y₁(n)=x_(π(1))(n), y₂(n)=x_(π(2))(n), y₃(n)=x_(π(3))(n), y₄(n)=_(π(4))(n) where π is a permutation of {1,2,3,4}. Thus W will be a matrix with 4 elements equal to 1 and the remaining 12 elements equal to 0; and h _(π(m))=h_(m). For an FDD system, the restriction to a search of only permutation Ws reduces the computation complexity for a mobile receiver which may have limited computational power. This is also particularly beneficial when the feedback resource is limited and/or the channel changes at a faster rate. By symmetry not all permutations must be considered; for example, interchanging s₁ and s₂ has no effect on the channel. Indeed, there are only 6 different permutations. Note that wth W a permutation, the minimization constraint trace{W^(H)W}=4 automatically occurs, and the constraint E[| h ₁|²+| h ₂|²]=E[| h ₃|²+| h ₄|²]=2 translates to choosing from three possibilities (permutations): (1) E[|h₁|²+|h₂|²]≡E[|h₃|²+|h₄|²]≡2; (2) E[|h₁|²+|h₃|²]≡E[|h₂|²+|h₄|²]≡2; or (3) E[|h₁|²+|h₄|²]≡E[|h₂|²+|h₃|²]≡2.

When the power across all the channel coefficients is uniformly distributed (that is, E[|h_(p)|²=1 for all p), the above constraints are automatically satisfied. In this case, it suffices to consider only the minimization of the off-diagonal terms of of E[{hacek over (C)}]. Otherwise, a tradeoff between the off-diagonal minimization and on-diagonal uniformization can be used. For example, the permutation matrix W may be chosen as the minimization: min{v₁|E[h_(π(1))*h_(π(3))+h_(π(2))h_(π(4))*]|²+v₂|E[h_(π(1))*h_(π(4))−h_(π(2))h_(π(3))*]|²+v₃|E[|h_(π(1))|²+|h_(π(2))|²]−2|²} where v₁, v₂, and v₃ are weighting parameters that are chosen to achieve the desired degree of trade-off.

Further, the approach of restricting W to be a permutation can be expanded to include weighting of the nonzero elements of W. In particular, with permutation π, take y₁(n)=w_(π(1))x_(π(1))(n), y₂(n)=w_(π(2))x_(π(2))(n), y₃(n)=w_(π(3))x_(π(3))(n), y₄(n)=w₍₄₎x_(π(4))(n) where the set of weights {w₁, w₂, W₃ , W₄} are nonzero and may be quantized to further limit complexity. In this case the constraint trace{W^(H)W}=4 translates into |w₁|²+|w₂|²+|w₃|²+|w₄|²=4.

3. Four Transmit Antennas with Multiple Receive Antennas Preferred Embodiments

FIG. 2 c illustrates a first preferred embodiment receiver with Q (≧2) antennas and which, analogous to the one antenna receiver of FIG. 2 b, receives transmissions from the transmitter of FIG. 2 a; FIG. 1 c is a flow diagram. As FIG. 2 e illustrates a single antenna together with Q RAKE fingers for tracking Q resolvable received paths can effectively operate the same as Q antennas because Q resolvable paths will have differing transmission channel coefficients. Similarly, other combinations of antennas and fingers can be interpreted as multiple antennas with single fingers or a single antenna with multiple fingers.

Denote the received despread baseband signal for symbol interval n for receiver antenna q (1≦q≦Q) as r _(q)(n)=h _(q1) y ₁(n)+h _(q2) y ₂(n)+h _(q3) y ₃(n)+h _(q4) y ₄(n)+w _(q)(n) where h_(qm) is the baseband channel coefficient for the channel from the m^(th) transmitter antenna to receiver antenna q and w_(q)(n) is channel white noise. Pilot symbols from each of the four transmitter antennas provide updating estimates for the hqm as shown in FIG. 2 d.

FIG. 1 c is a flow diagram for the operation of the Q-antenna receiver which is analogous to and an extension of the operation of the previously-described one antenna receiver of FIG. 1 b. In particular, using notation analogous to that of the foregoing, take W* as the 4×4 matrix that transforms x to y as before; then take hq to be the 4-vector with coefficients h_(q1), h_(q2), h_(q3), h_(q4), and set h _(q)=W^(H)h_(q), thus with a real inner product:

$\begin{matrix} {r_{q} = {{\text{<}h_{q}}❘{{y\text{>}} + w_{q}}}} \\ {= {{\text{<}h_{q}}❘{{W^{*}x\text{>}} + w_{q}}}} \\ {= {{\text{<}W^{H}h_{q}}❘{{x\text{>}} + w_{q}}}} \\ {= {{\text{<}\hslash_{q}}❘{{x\text{>}} + w_{q}}}} \end{matrix}$ or more explicitly, r _(q)(n)= h _(q1) x ₁(n)+ h _(q2) x ₂(n)+ h _(q3) x ₃(n)+ h _(q4) x ₄(n)+w _(q)(n) = h _(q1) s ₁(n)+ h _(hq2)(−s ₁*(n+1))+ h _(q3) s ₂(n)+ h _(q4)(−s ₂*(n+1))+w _(q)(n) and r _(q)*(n+1)= h _(q1) *x ₁*(n+1)+ h _(q2) *x ₂*(n+1)+ h _(q3)*_(x3)*(n+1)+ h _(q4) *x ₄*(n+1)+w _(q)*(n+1) = h _(q1) * s ₁*(n+1)+ h _(q2) *s ₁(n)+ h _(q3) *s ₂*(n+1)+ h _(q4) *s ₂(n)+w _(q)*(n+1) This can again be expressed in terms of 2-vectors and 2×2 matrices as: r _(q) ={hacek over (A)} _(q1) s ₁ +{hacek over (A)} _(q2) s ₂ +W _(q) where r_(q) is the 2-vector of components r_(q)(n), r_(q)*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); S2 is the 2-vector of components s₂(n), s₂*(n+1 ); {hacek over (A)}_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 1 a to receiver antenna q with first row of {hacek over (A)}_(q1) equal h _(q1), − h _(q2) and second row h _(q2)*, h _(q1)*; {hacek over (A)}_(q2) is a 2×2 matrix corresponding to the channels of the lower pair X₃, X₄ to receiver antenna q with first row h _(q3), − h _(q4) and second row hq_(q4)*, h _(q3)*; and W_(q) is a 2-vector with white noise components.

As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₁, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), 4×1 vector s as the vertical concatenation of s₁ and s₂; and 2Q×4 matrix {hacek over (A)} as the Q×2 array of 2×2 matrices {hacek over (A)}₁₁{hacek over (A)}₁₂; {hacek over (A)}₂₁{hacek over (A)}₂₂; . . . ; {hacek over (A)}_(Q1), {hacek over (A)}_(Q2) (thus the first row of {hacek over (A)} is [ h ₁₁, −h₁₂, h₁₃, −h₁₄] and second row [h₁₂*, h₁₁*, h₁₄*, h₁₃*], third row [h₂₁, −h₂₂, h₂₃, −h₂₄], fourth row [h₂₂*, h₂₁*, h₂₄*, h₂₃*], and so forth down to the 2Qth row [h_(Q2)*, h_(Q1)*, h_(Q4)*, h_(Q3)*]. With this notation: r={hacek over (A)}s+w The matrix {hacek over (C)} is the 2Q×4 effective transformed channel coefficient matrix of the 4Q paths: one from each of the four x_(m) to each of the Q receiver antennas. The 4×4 transformation matrix W will be determined as previously by approximating an independent, identically distributed channel.

As with the previous preferred embodiments, form {hacek over (C)} as the 4×4 Hermitian matrix {hacek over (A)} ^(H){hacek over (A)}which can be viewed as a 2×2 array of sums of 2×2 matrices {hacek over (A)}_(q,k) ^(H){hacek over (A)}_(q,m) with the sums over q in the range 1≦q≦Q for each k,m=1,2, where

$\begin{matrix} {\left. {{{\overset{˘}{A}}_{q1}^{H}{\overset{˘}{A}}_{q1}} = {\left( {❘h_{q1}} \right.^{2} + {h_{q2}}^{2}}} \right)I_{2}\mspace{14mu}\left( {I_{2}\mspace{14mu}{is}\mspace{14mu} 2 \times 2\mspace{14mu}{identity}\mspace{14mu}{matrix}} \right)} \\ {{{\overset{˘}{A}}_{q2}^{H}{\overset{˘}{A}}_{q2}} = {\left( {{h_{q3}}^{2} + {h_{q4}}^{2}} \right)I_{2}}} \\ {{{\overset{˘}{A}}_{q1}^{H}{\overset{˘}{A}}_{q2}} = \begin{bmatrix} {\left( {{h_{q1}^{*}h_{q3}} + {h_{q2}h_{q4}^{*}}} \right)} & {- \left( {{h_{q1}^{*}h_{q4}} - {h_{q2}h_{q3}^{*}}} \right)} \\ {\left( {{h_{q1}^{*}h_{q4}} - {h_{q2}h_{q3}^{*}}} \right)^{*}} & {\left( {{h_{q1}^{*}h_{q3}} + {h_{q2}h_{q4}^{*}}} \right)^{*}} \end{bmatrix}} \end{matrix}$ {hacek over (A)} _(q2) ^(H) {hacek over (A)} _(q1)=({hacek over (A)} _(q1) ^(H) {hacek over (A)} _(q2))^(H)

That is, {hacek over (C)} consists of sums of STTD-encoded 2×2 subblocks and reflects the transformed physical channel which determines performance of the communication system. Again, the preferred embodiments choose the transformation W to enhance capacity of the physical channel C to yield the transformed physical channel {hacek over (C)}.

As with the preceding preferred embodiments, the covariance matrix R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements π_(TX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements π_(RX)(i,j)). That is, R=R_(RX){circle around (×)} R_(TX); or for the preferred embodiments with 4 transmitter antennas and Q receiver antennas: E[h _(qp) h _(q,p),*]ρ_(RX)(q,q′)ρ_(TX)(p,p′) for p,p′=1, . . . , 4; q,q′=1, . . . , Q But then for each pair q,q′, all of the ρ_(TX)(p,p′) can be found up to the multiplicative constant p_(RX)(q,q′). That is, the separability of the receiver covariance and transmitter covariance implies the previously analyzed case Q=1 suffices. And the transformation W in general leads to the transformed transmitter covariance {hacek over (R)}_(TX)=W^(H)R_(TX)W and the transformed covariance {hacek over (R)}=(I_(Q){circle around (×)}W)^(H), R (I_(Q){circle around (×)}W) where I_(Q) is the Q×Q identity matrix.

So repeat the previous: estimate the 4×4 transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel state estimates h _(qp) over multiple symbol intervals for one antenna q π_(RX)(q,q)π_(TX)(p,p′)=(1/N)Σ_(1≦n≦N) h _(qp) [n] h _(qp) ,*[n] where N is the number of samples in the average. The estimates h (from a pilot channel) are available from the space-time RAKE operation. Further, the estimates of π_(TX)(p,p′) from various receiver antennas q can be averaged (with weightings) to improve the estimates.

Then find 4×4 W using any of the previous minimization approaches. The Q antennas implies the elements of 4×4 E[{hacek over (C)}] are sums over q. More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{hacek over (C)}] to find W becomes: min{|Σ_(1≦q≦Q) E[ h _(q1) * h _(q3) + h _(q2) h _(q4) *]| ²+|Σ_(1≦q≦Q) E[ h _(q1) * h _(q4) − h _(q2) h _(q3)*]|²} min{|Σ_(1≦q≦Q) E[| h _(q1)|² +| h _(q2)|²]−2|²} with a normalization of Σ_(1≦q≦Q) E[| h _(q1|) ²+| h _(q2)|²+| h _(q)3|²+| h _(q4)|²]=4.

Analogous to the Q=1 scenario, an interference resistant detector must be used to separate the two independent data streams from two STTD encoders. In general, the optimal maximum likelihood detection would estimate the transmitted symbols s by ŝ which is the vector of symbols that minimizes the sum of the errors in the received signal on the receiver antennas: ∥r₁−({hacek over (A)}₁₁ŝ₁+{hacek over (A)}₁₂ŝ₂)∥²+∥r₂−({hacek over (A)}₂₁ŝ₁+{hacek over (A)}₂₂ŝ₂)∥²+. . . +∥r_(Q)−({hacek over (A)}_(Q1)ŝ₁+{hacek over (A)}_(Q2)ŝ₂)∥² Such a maximum likelihood detection becomes computationally intensive with larger antenna systems. Since the size of matrix {hacek over (A)} is 2Q×4, linear (1-shot) and iterative detectors with lower complexity are applicable when Q is at least 2. As mentioned before, both linear and iterative detectors are based on the idea of interference suppression/cancellation. Possible methods include zero forcing and minimum mean square error (MMSE). In the following, the linear MMSE (LMMSE) and iterative MMSE (IMMSE) detectors are explained. A zero-forcing-based detector can be obtained from its MMSE analog by removing the second term in the matrix inverse.

Starting from the statistics z which is the output of the space-time RAKE combiner (e.g., FIG. 2 d): z={hacek over (A)} ^(H) r={hacek over (A)} ^(H)({hacek over (A)}s+w)={hacek over (C)}s+{hacek over (A)} ^(H) w the LMMSE detector essentially performs a linear transformation F to the statistics z such that the mean square error (MSE) E[∥F z−s∥²] is minimized. The (theoretically derived) linear transformation F is: F=({hacek over (C)}+N ₀ /E _(s) I ₄)⁻¹ where N₀ is the energy of each of the 2Q components of the white noise w, E_(s) is the average energy of each symbol in s (assume that all the symbols in s are of the same constellation, modulation scheme), and I₄ is the 4×4 identity matrix. As noted above, the linear transformation for linear zero-forcing (LZF) detector is simply F=({hacek over (C)})⁻¹ And the resulting minimum MSE for all of the 4 symbols in s corresponds to the diagonal elements of the matrix N₀F. The resulting linearly transformed statistics y=Fz is essentially the soft estimate of s. Each element of y is then passed separately to a decision device (symbol detector) to provide the corresponding hard symbol estimate.

For systems with 4 transmit antennas, the iterative MMSE (IMMSE) detector is a sequence of 4 linear MMSE detection stages, where each detection provides the soft and hard symbol estimates for each of the 4 symbols in s. In each of the 4 stages, a linear MMSE transformation is performed. After the transformation, one symbol is selected for detection (based on the post detection SINR). The signal corresponding to that symbol is then regenerated and subtracted from the received signal. Let a₁, a₂, a₃, and a₄ denote the first, second, third, and fourth columns of matrix {hacek over (A)}. Also, let v(n) denote the n-th element of a vector v. The following pseudo-code describes how an IMMSE detector operates:

B = [ a₁ a₂ a₃ a₄ ] for p=1 to 4 F = ( B^(H)B + N₀/E_(s) I )⁻¹ : (4−p+1)×(4−p+1) matrix y = F B^(H) r : (4−p+1)×1 vector Find the smallest diagonal element of matrix F Select one out of (4−p+1) symbols to be detected which corresponds to the smallest diagonal element of matrix F: let that be s(o(p)) Obtain soft estimate of symbol s(o(p)) from the corresponding element of y Find the hard estimate of s(o(p)): σ(o(p)) r = r − a_(o(p)) σ(o(p)) Remove column a_((p)) from B end Note that the symbol selection is based on the diagonal elements of matrix F, which correspond to symbol MSEs. Theoretically, the symbol MSE is inversely proportional to SINR. 4. Multiple Antenna Preferred Embodiments

FIG. 2 c generalizes the foregoing transmitter from four transmit antennas to P antennas with P/2 separate STTD encoders for P/2 symbol streams s₁, s₂, . . . , s_(p/2). The preceding preferred embodiments are modified so that

$\begin{matrix} {{r_{q}(n)} = {{h_{q1}{y_{1}(n)}} + {h_{q2}{y_{2}(n)}} + \ldots + {h_{qP}{y_{P}(n)}} + {w_{q}(n)}}} \\ {= {{\hslash_{q1}{x_{1}(n)}} + {\hslash_{q2}{x_{2}(n)}} + \ldots + {\hslash_{qP}{x_{P}(n)}} + {w_{q}(n)}}} \\ {= {{\hslash_{q1}{s_{1}(n)}} + {\hslash_{q2}\left( {- {s_{1}^{*}\left( {n + 1} \right)}} \right)} + \ldots + {\hslash_{qP}\left( {- {s_{P/2}^{*}\left( {n + 1} \right)}} \right)} + {w_{q}(n)}}} \end{matrix}$ and similarly r _(q)*(n+1)= h _(q1) *x ₁*(n+1)+ h _(q2) *x ₂*(n+1)+. . .+ h _(qP) *x _(P)*(n+1)+w _(q)*(n+1) = h _(q1) *s ₁*(n+1)+ h _(q2) *s ₁(n)+. . . + h _(qP) *s _(P/2)(n)+w _(q)*(n+1) where W is a P×P linear transformation of P-vector x to P-vector y=W* x as in FIG. 2 d and h _(q)=W^(H)h_(q).

This can again be expressed in terms of 2-vectors and 2×2 matrices as: r _(q) ={hacek over (A)} _(q1) s ₁ +{hacek over (A)} _(q2) s ₂ +. . . +{hacek over (A)} _(qP/2) s _(P/2) +w _(q) where r_(q) is the 2-vector of components r_(q)(n), r_(q)*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); . . . , s_(P/2) is the 2-vector of components s_(P/2)(n), s_(P/2)*(n+1); {hacek over (A)}_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 2 d to receiver antenna q with first row of {hacek over (A)}_(q1) equal h _(q1), − h _(q2) and second row h _(q2)*, h _(q1)*; . . . , and {hacek over (A)}_(P/2) is a 2×2 matrix corresponding to the channels of the bottom pair x_(P−1), x_(P) to antenna q with first row h _(q,P−1), − h _(qP) and second row h _(qP)*, h _(q,P−1)*.

As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₂, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), P×1 vector s as the vertical concatenation of s₁. . . s_(P/2); and 2Q×P matrix {hacek over (A)} as the Q×P/2 array of 2×2 matrices {hacek over (A)}₁₁ {hacek over (A)}₁₂ . . . {hacek over (A)}_(1, P2); {hacek over (A)}₂₁ {hacek over (A)}₂₂, . . . , {hacek over (A)}_(1P/2); . . . , {hacek over (A)}_(Q1) {hacek over (A)}_(Q2), . . . , {hacek over (A)}_(Q,P/2) (thus the first row of {hacek over (A)} is [ h ₁₁, − h ₁₂, h ₁₃, − h ₁₄, . . . , h _(1,P−1), h _(1P)] and second row [ h ₁₂*, h ₁₁*, h ₁₄*, h ₁₃*, . . . , h _(1P)*, h _(1,P−1)*], third row [ h ₂₁, − h ₂₂, h ₂₃, − h ₂₄, . . . , h _(2,P−1), − h _(2P)], fourth row [ h ₂₂*, h ₂₁*, h ₂₄*, h ₂₃*, . . . , h _(2P)*, h _(2,P−1)*], and so forth down to the 2Qth row [ h _(Q2)*, h _(Q1)*, h _(Q4)*, hQ₃*, . . . , h _(QP)*, h _(Q,P−1)*]. With this notation: r={hacek over (A)}s+w The matrix {hacek over (A)} is the 2Q×P effective transformed channel coefficient matrix of the PQ paths: one from each of the P transmitter antennas to each of the Q receiver antennas. The P×P transformation matrix W will be determined as previously by approximating an independent, identically distributed channel.

Form {hacek over (C)} as the P×P Hermitian matrix {hacek over (A)}^(H){hacek over (A)} and which is a P/2×P/2 array of sums of 2×2 STTD matrices {hacek over (A)}_(q,k) ^(H){hacek over (A)}_(q,m) with the sums over q in the range 1≦q≦Q for each k,m=1,2, . . . P/2 where:

$\begin{matrix} {{{\overset{˘}{A}}_{qm}^{H}{\overset{˘}{A}}_{qm}} = {\left( {{\hslash_{q,{{2m} - 1}}}^{2} + {\hslash_{q,{2m}}}^{2}} \right)I_{2}\mspace{14mu}\left( {I_{2}\mspace{14mu}{is}\mspace{14mu} 2 \times 2\mspace{14mu}{identity}\mspace{14mu}{matrix}} \right)}} \\ {{{\overset{˘}{A}}_{qk}^{H}{\overset{˘}{A}}_{qm}} = \begin{bmatrix} \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{{2m} - 1}}} + {\hslash_{q,{2k}}\hslash_{q,{2m}}^{*}}} \right) & {- \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{2m}}} - {\hslash_{q,{2k}}\hslash_{q,{{2m} - 1}}^{*}}} \right)} \\ \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{2m}}} - {\hslash_{q,{2k}}\hslash_{q,{{2m} - 1}}^{*}}} \right)^{*} & \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{{2m} - 1}}} + {\hslash_{q,{2k}}\hslash_{q,{2m}}^{*}}} \right)^{*} \end{bmatrix}} \end{matrix}$ {hacek over (A)} _(qm) ^(H) {hacek over (A)} _(qk)=({hacek over (A)} _(qk) ^(H) {hacek over (A)} _(qm))^(H)

That is, {hacek over (C)}consists of sums of STTD-encoded 2×2 subblocks and reflects the transformed physical channel and determines performance of the communication system. Again, the preferred embodiments choose the transformation W to enhance capacity of the physical channel C to yield the transformed physical channel {hacek over (C)}.

As with the preceding preferred embodiments, the covariance matrix R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements ρ_(TX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements ρ_(RX)(i,j)). That is, R=_(RX) {circle around (×)} R_(TX); or for the preferred embodiments with P transmitter antennas and Q receiver antennas: E[h _(qp) h _(q′p′)*]=ρ_(RX)(q,q′)ρ_(TX)(p,p′) for p,p′=1, . . . , P; q,q′=1, . . . , Q Then for each pair q,q′, all of the ρ_(TX)(p,p′) can be found up to the multiplicative constant ρ_(RX)(q,q′). That is, the separability of the receiver covariance and transmitter covariance means that the previously-analyzed case Q=1 suffices. Indeed, the transformation W in general leads to the transmitter covariance {hacek over (R)}_(TX)=W^(H) R_(TX) W and the covariance {hacek over (R)}=(I_(Q){circle around (×)}W)^(H) R (I_(Q){circle around (×)}W) where I_(Q) is the Q×Q identity matrix.

So repeating the previous: estimate the P×P transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel state estimates hqp over multiple symbol intervals for one antenna q ρ_(RX)(q,q)ρ_(TX)(p,p′)=(1/N)Σ_(1≦n≦N) h _(qp) [n] h _(qp) ′*[n] where N is the number of samples in the average. The estimates h (from a pilot channel) are available from the space-time RAKE operation.

Then find W using any of the previous minimization approaches. More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{hacek over (C)}] implies picking W to achieve: min{|Σ_(1≦q≦Q) E[ h _(q,2k−1) * h _(q,2m−1) + h _(q,2k) h _(q,2m)*]|+|Σ_(1≦q≦Q) E[ h _(q,2k−1) * h _(q,2m) − h _(q,2k− h) _(q,2m−1)*]|} min{|Σ_(1≦q≦Q) E[| h _(q,2k−1)|² +| h _(q,2k)|²]−2|} with a normalization of E[| h _(q1)|²+| h _(q2)|²+. . . +| h _(qP)|²]=P and trace{W^(H)W}=P.

The same detection schemes (maximum likelihood, linear, and iterative) can be extended for an arbitrary value of P (even). When Q is at least P/2, linear and iterative detection can be applied.

5. Extension for Multipath (Frequency Selective) Channels

When the channel is frequency selective (contains multiple propagation paths with different delays), two possible scenarios can occur. The first scenario is relevant to CDMA systems with large spreading gain (e.g. ≧128) and the channel delay spread is small compared to one symbol duration. In this case, different paths arriving at the receiver at different delays can be resolved to provide multipath diversity without causing significant amount of inter-symbol interference. Additional path diversity can be treated as having additional receive antennas (e.g. having 2-path diversity at each antenna is equivalent to having 2Q receive antennas).

The second scenario is relevant to higher data rate systems where the channel delay spread is sufficiently large compared to one symbol duration that the effect of inter-symbol interference is significant. In this case, multipath interference suppression can be used in conjunction to the spatial interference resistant detector, especially when the number of users/codes is large and/or higher order modulation is used. The concept described above for selecting the best linear transformation W can be extended to this scenario.

6. Asymmetric Modulation Preferred Embodiments

FIG. 3 illustrates asymmetric modulation preferred embodiments for two symbol streams (analogous to FIG. 2 a) in which the symbol mapping differs for the streams; FIG. 1 d is a flow diagram. In particular, in a first asymmetric preferred embodiment the serial-to-parallel converter processes 6 bits per symbol interval by alternating sets of 2 bits to the upper symbol mapper and 4 bits to the lower symbol mapper. The upper symbol mapper maps a set of 2 bits into a QPSK symbol, and the lower mapper maps a set of 4 bits into a 16-QAM symbol. The resulting symbol streams (upper QPSK and lower 16-QAM) are each STTD encoded (and spread) and transmitted. In a variation, the serial-to-parallel converter could process groups of 12 bits (2 symbol intervals) by 4 bits to the upper mapper for two QPSK symbols followed by 8 bits to the lower mapper for two 16-QAM symbols. This asymmetric symbol constellation sizes can take advantage of asymmetries in the channel (space diversity). The symbol mapping may be adaptive to the channel by using channel estimates to compare capacity of the transmitter antennas. The symbol mappers may provide multiple symbol constellations for dynamic adaptation; or all the symbol mappings may be performed in a single (programmable) DSP or other processor.

FIG. 4 shows a receiver for the asymmetric symbol transmission where detection uses the appropriate symbol constellations which are updated intermittently (periodically).

Analogously, the asymmetric symbol preferred embodiments can also use time diversity in that the symbol mapping may alternate in successive symbol periods. And time diversity can be mixed with space diversity. In particular, for 12 bits per 2 symbol intervals the following symbol possibilities arise:

asymmetry s₁(n) s₁(n + 1) s₂(n) s₂(n + 1) none 8PSK 8PSK 8PSK 8PSK space QPSK QPSK 16-QAM 16-QAM time QPSK 16-QAM QPSK 16-QAM space/time QPSK 16-QAM 16-QAM QPSK For other numbers of bits per symbol interval, other symbol constellations would be used; for example, 18 bits per 2 symbol intervals could use 16-QAM plus 32-QAM. And the bit rate (bits per symbol interval) could vary in time, so the pairs of constellations used would also vary.

More generally, different combinations of 4 modulation (symbol mapping) schemes can be used, one for each transmit antenna. For multiple STTD systems with P transmit antennas, different combinations of P modulation schemes can be used. A combination of P modulation schemes corresponds to a particular assignment of P modulation schemes to P different symbols.

Given a predetermined set of different modulation assignments, there are a number of possible criteria for selecting the desired modulation assignment from the set. These criteria can be categorized into two groups: fixed and adaptive. A fixed criterion does not depend on the channel dynamics, whereas an adaptive criterion periodically updates the modulation assignment based upon the change in channel condition.

An example of fixed criteria for systems with 4 transmit antennas is to select an asymmetric assignment of QPSK for one stream and 16-QAM for the second stream as described above. This selection results in better performance compared to the symmetric assignment of 8-PSK for both streams. It can be argued that the aforementioned asymmetric assignment results in approximately 1-dB improvement over the symmetric assignment regardless of the channel condition.

Adaptive criterion can be based on several metrics. One possible metric is to minimize the bit error rate (BER) or the frame error rate (FER) for a given channel realization while fixing the data rate. In this case, the set of possible modulation assignments contains different assignments, which result in the same data rate. Another possible metric is to maximize the system throughput (data rate) for a given channel realization while imposing a worst-case error rate (BER or FER) constraint. In this case, the set of modulation assignments contains different assignments with varying data rates. In both cases, a relation/mapping between the channel parameters and the error rate (BER or FER) is needed. Such mapping depends on the type of detector that is used at the receiver. For the maximum likelihood detector, a union bound for BER in terms of the channel parameters and modulation assignment scheme can be derived. The selected assignment for the first case should be the one that results in the minimum BER bound. For linear and iterative (zero forcing or minimum mean square error (MMSE)) detectors, the error rate is a decreasing function of minimum/worst-case post-detection SINR, where the minimum is taken across all the P symbols. Hence, the selected assignment for the first case should be the one that results in the largest minimum/worst-case post-detection SINR. Closed-form expressions of the post-detection SINR for each symbol can be derived for different types of linear and iterative detectors.

Before considering the mapping between post-detection SINR and channel parameters, it is essential to discuss the operations of linear and iterative detectors. Focus on MMSE-based detectors since a zero-forcing-based detector can be obtained from its MMSE analog by removing the second term in the matrix inverse.

Repeating previously-used notation and a FIG. 3 transmitter, take the received signals on antenna q after down conversion (and any dispreading) as: r _(q)(n)=h _(q1) x ₁(n)+h _(q2) x ₂(n)+. . . +h _(qP) x _(P)(n)+w _(q)(n) =h _(q1) s ₁(n)+h _(q2)(−s ₁*(n+1))+. . . +h _(qP)(−s _(P/2)*(n+1))+w _(q)(n) and similarly r _(q)*(n+1)=h _(q1) *x ₁*(n+1)+h _(q2) *x ₂*(n+1)+. . . +h _(qP) *x _(P)*(n+1)+w _(q)*(n+1) =h _(q1) *s ₁*(n+1)+h _(q2) *s ₁(n)+. . . +h _(qP) *s _(P/2)(n)+w_(q)*(n+1) where h_(qp) is the physical channel coefficient from transmit antenna p to receive antenna q.

This can again be expressed in terms of 2-vectors and 2×2 matrices as: r _(q) =A _(q1) s ₁ +A _(q2) s ₂ +. . . , +A _(qP/2) s _(P/2) +w _(q) where r_(q) is the 2-vector of components r_(q) (n), r_(q)*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); . . . s_(P/2) is the 2-vector of components s_(P/2)(n), s_(P/2)*(n+1); A_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 3 to receiver antenna q with first row of A_(q1) equal [h_(q1), −h_(q2)] and second row [h_(q2)*, h_(q1)*]; . . . , and A_(P/2) is a 2×2 matrix corresponding to the channels of the bottom pair x_(P−1), x_(P) (P=4 in FIG. 3) to antenna q with first row [h_(q,P−1), −h_(qP)] and second row [h_(qP)*, h_(q,P−1)*].

As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₁, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), P×1 vector s as the vertical concatenation of s₁ . . . s_(P/2); and 2Q×P matrix A as the Q×P/2 array of 2×2 matrices A₁₁ A₁₂ . . . , A_(1,P/2); A₂₁ A₂₂, . . . , A_(1,P/2). . . A_(Q1) A_(Q2), . . . , A_(Q,P/2) (thus the first row of A is [h₁₁, −h₁₂, h₁₃,−h₁₄, . . . , h_(1,P−1), −h_(1P)] and second row [h₁₂*, h₁₁*, h₁₄*, h₁₃*, . . . , h_(1P)*, h_(1,P−1)*], third row [h₂₁, −h₂₂, h₂₃, −h₂₄, . . . , h_(2,P−1), −h_(2P)], fourth row [h₂₂*, h₂₁*, h₂₄*, h₂₃*, . . . , h_(2P)*, h_(2,P−1)*], and so forth down to the 2Qth row [h_(Q2)*, h_(Q1),*, h_(Q4)*, h_(Q3)*, . . . , h_(QP)*, h_(Q,P−1)*]. With this notation: r=A s+w The matrix A is the 2Q×P effective transformed channel coefficient matrix of the PQ paths: one from each of the P transmitter antennas to each of the Q receiver antennas.

With P=4 and starting from the statistics z which is the output of the space-time RAKE combiner: z=A ^(H) r=A ^(H)(A s+w)=C s+A ^(H) w the LMMSE detector essentially performs a linear transformation F to the statistics z such that the mean square error (MSE) E[∥F z−s ∥²] is minimized. Again, theoretically, such linear transformation F is: F=(C+N ₀ E ⁻¹)⁻¹ where N₀ is the energy of each of the 2Q components of the white noise w, E is the 4×4 diagonal matrix of symbol average energies: E₁₁ is average energy of s₁(n), E₂₂ average of s₁(n+1), E₃₃ average of s₂(n), E₄₄ average of s₂(n+1) (e.g., n denotes even-indexed symbol intervals and n+1 denotes odd-indexed intervals). As noted above, the linear transformation for linear zero-forcing (LZF) detector is simply F=C⁻¹.

The resulting minimum MSE for all the 4 symbols in s corresponds to the diagonal elements of the matrix N₀ F. The resulting linearly transformed statistics y=Fz is essentially the soft estimate of s. Each element of y is then passed separately to a decision device (symbol detector) provide the corresponding hard symbol estimate.

For systems with 4 transmit antennas, the iterative MMSE (IMMSE) detector is a sequence of 4 linear MMSE detection stages, where each detection provides the soft and hard symbol estimates for each of the 4 symbols in s. In each of the 4 stages, a linear MMSE transformation is performed. After the transformation, one symbol is selected for detection. The signal corresponding to that symbol is then regenerated and subtracted from the received signal.

Let a₁, a₂, a₃, and a₄ denote the first, second, third, and fourth columns of matrix A. Also, let v(n) denote the n-th element of a vector v. The following pseudo-code describes how IMMSE detector operates:

B = [ a₁ a₂ a₃ a₄ ] E = diag{ E₁₁ , E₂₂ , E₃₃ , E₄₄ } for p=1 to 4 F = ( B^(H)B + N₀ E⁻¹ )⁻¹ : (4−p+1)×(4−p+1) matrix y = F B^(H) r : (4−p+1)×1 vector Find the smallest diagonal element of matrix F Select one out of (4−p+1) symbols to be detected which corresponds to largest SINR: let that be s(o(p)) Obtain soft estimate of symbol s(o(p)) from the corresponding element of y Find the hard estimate of s(o(p)): σ(o(p)) r = r − a_(o(p)) σ(o(p)) Remove column a_(o(p)) from B Remove column o(p) and row o(p) from matrix E end The extension for systems with P=2p (p≧3) transmit antennas is straightforward.

For MMSE-based detectors the post-detection symbol SINR corresponding to the n-th element of s is SINR(n)=(E _(nn) /N ₀) F _(nn)−1 where F_(nn) indicates the n-th diagonal element of matrix F. For LMMSE, matrix F is the same for all the symbols in s (see the above discussion on LMMSE). For IMMSE, matrix F is different for different symbols in s since each symbol is detected at different iteration. This SINR expression can be used for selecting the symbol to be detected at each iteration. Based on the above relation, the selected symbol is the one that results in the minimum (F_(nn)/E_(nn)). Symbol selection at each iteration can also be thought of as finding the detection order.

The SINR expression given above is instrumental for selecting the modulation assignment (described above) as it provides an explicit relation between the post-detection SINR (which is inversely related to BER or FER) and the channel condition (conveyed in matrix F) for both linear and iterative MMSE detectors. For a fixed data rate constraint, the adaptive assignment selection chooses a modulation assignment that maximizes the worst-case SINR (minimum SINR across all the symbols in s). For a fixed error rate constraint, the system throughput is maximized by selecting an assignment with the highest possible data rate that still satisfies the error rate constraint. In this case, the mapping between SINR and error rate can be used.

Related to the detection ordering (symbol selection at each iteration) for an IMMSE detector, preferred embodiments also provide a better metric than (F_(nn)/E_(nn)). The asymmetry of the symbol constellations implies differing average energy for differing symbol streams. Instead of using the post-detection symbol SINR, use the MSE scaled by the average symbol energy (which is: E_(nn) F_(nn)), which reflects per bit MSE. This metric works better when bit error rate is of interest rather than symbol error rate. The same holds for iterative zero-forcing detector where the mean square error is equivalent to the noise variance: using E_(nn) F_(nn) for detection ordering results in better performance (F=(B^(H) B)⁻¹ for iterative zero-forcing).

The symbol mapping asymmetry also extends to the case of more than 2 streams with STTD encoding; that is, the transmitter of FIG. 2 c can have an asymmetric symbol mapping among the P/2 streams.

The asymmetric modulation preferred embodiments can also follow the setup of FIG. 2 a in that the symbol mapping may be performed prior to the serial-to-parallel. Further, the STTD encoder outputs of the asymmetric symbols can also be linearly transformed prior to transmission; thereby combining the asymmetry with the channel adaptation of preceding preferred embodiments. In fact, a permutation linear transformation together with fixed symbol mappers can provide the choice among space-only, time-only, and space-time asymmetries. The receiver with Q antennas may be as in FIG. 2 d with the detection including searches over asymmetric constellation products.

Analogous to the linear transformation preferred embodiments, for a TDD system both the transmitter and the receiver can compute channel conditions and thus the constellation selection, but either the transmitter or the receiver alone could perform the computations and convey to the other the constellation selection. In an FDD system the receiver assesses the channel conditions and conveys information to the transmitter; and the transmitter could perform the selection computation and convey such to the receiver.

7. Simulation Results

FIGS. 5-7 show simulation results of with and without optimal permutation W for double STTD with P=4 transmit antennas and Q=4 receiver antennas for 8-PSK, 16-QAM, and 64-QAM, respectively. In particular, channels A and B are flat Rayleigh fading models (peak cross-correlation of 0.6 for channel B). Here, 1234 denotes regular double STTD without permutation; 3124 is the optimal permutation for channel A; and 1432 is the optimal permutation for channel B. The optimal permutation does not depend upon the modulation scheme, it only depends upon the spatial covariance profile.

FIGS. 8-9 show comparisons of both STTD encoding 8-PSK with one STTD encoding QPSK and the other 16-QAM (i.e., spatial asymmetry) for an ID channel and for channel B, respectively. Note “ModDetect” means the modified iterative detector in which instead of using the post-detection symbol SINR, use the MSE scaled by the average symbol energy.

8. Modifications

The preferred embodiments can be modified in various ways while retaining the features of linear transformation of symbols prior to transmission and/or symmetrical symbol mapping.

For example, the receiver could have the linear transformation provided by the transmitter and thereby avoid the computation; the STTD could be 3×3 or larger; the asymmetric symbol encoding could also apply to general multiple input, multiple output (MIMO) systems. 

1. A method of transmitting, comprising: (a) applying symbol streams s₁, s₂, . . . , s_(P) to a plurality of space-time transmit diversity encoders at a first time, where P is an integer greater than 3; (b) encoding s₁ to produce streams x₁, x₂; (c) encoding stream s_(P) to produce streams x_(2P-1)x_(2P); (d) linearly transforming said x₁, x₂, . . . x_(2p) into y₁, y₂, . . . , y_(2P); and (e) transmitting to a recipient said y₁, y₂, . . . , y_(2P), (f) wherein said linearly transforming of step (d) is a weighted permutation of said x₁, x₂ derived from transmission channel coefficients, and wherein said weighted permutation changes the order of symbols from streams x₁, x₂, . . . , x_(2P) to streams y₁, y₂, . . . , y_(2P).
 2. The method of claim 1, wherein said linear transforming of step (d) of claim 1 is selection from a finite set of linear transformations.
 3. The method of claim 1, wherein said symbol streams s₁, s₂, s_(p) of step (a) are orthogonal frequency division multiplexing (OFDM) symbol streams.
 4. The method of claim 1, wherein P=4.
 5. The method of claim 1, wherein: said linear transforming of step (d) of claim 1 is with parameters arising from transforming a channel from a recipient of said transmitting of step (e) of claim 1, said transforming a channel approximates an independent, identically distributed or uncorrelated channel.
 6. The method of claim 1, wherein: said linear transforming of step (d) of claim 1 is with a P×P matrix W determined by combinations of estimations of the elements of the matrix {hacek over (R)}_(TX)=W^(H)R_(TX) W.
 7. The method of claim 6, wherein: said coefficients of a channel are estimated with pilot symbols from said recipient.
 8. The method of claim 1, further comprising: spreading said y₁, y₂, . . . , y_(2P) prior to transmission.
 9. A method of transmitting, comprising: (a) providing symbol stream s₁ to a first space-time transmit diversity encoder at a first time; (b) providing space-time transmit diversity encoded streams x₁, x₂ from said first space-time transmit diversity encoder; (c) providing symbol stream s₂ to a second space-time transmit diversity encoder at the first time; (d) providing space-time transmit diversity encoded streams x₃, x₄ from said second space-time transmit diversity encoder, wherein said streams x₃, x₄ are different from said streams x₁, x₂; (e) linearly transforming said x₁, x₂, x₃, x₄ into y₁, y₂, y₃, y₄ by a permutation of said x₁, x₂, x₃, x₄ in response to channel coefficients, wherein said permutation changes the order of symbols from streams x₁, x₂, x₃, x₄ to streams y₁, y₂, y₃, y₄; and (f) transmitting said y₁, y₂, y₃, y₄.
 10. The method of claim 9, wherein said linear transforming of step (e) of claim 9 is selection from a finite set of linear transformations.
 11. The method of claim 9, wherein said symbol streams s₁ and s₂ of steps (a) and (c), respectively, are orthogonal frequency division multiplexing (OFDM) symbol streams.
 12. The method of claim 9, wherein said linear transforming of step (e) of claim 9 is a weighted permutation of said x₁, x₂, x₃, x₄.
 13. The method of claim 9, wherein said linear transforming of step (e) of claim 9 is with parameters provided by a recipient of said transmitting of step (f) of claim
 9. 14. The method of claim 13, wherein said recipient provides said parameters via a feedback channel.
 15. The method of claim 9, wherein said linear transforming of step (e) of claim 9 is with parameters derived from receipt of signals from a recipient of said transmitting of step (f) of claim
 9. 16. The method of claim 15, comprising transmitting said parameters to said recipient via a signaling channel.
 17. The method of claim 9, wherein said linear transforming of step (e) of claim 9 is with parameters arising from transforming a channel from a recipient of said transmitting of step (f) of claim 9, said transforming a channel approximates an independent, identically distributed or uncorrelated channel.
 18. The method of claim 9, wherein space-time transmit diversity encoded stream x₁ comprises x_(1(j)) and x_(1(j+1)) where j is a positive integer, comprising the steps of: producing x_(1(j)) at a first time; producing x_(1(j+1)) at a second time; producing a first transform of x_(1(j+1)) at the first time; and producing a second transform different from the first transform of x_(1(j)) at the second time.
 19. The method of claim 18, wherein said first transform is a negative conjugation and wherein said second transform is a conjugation. 